package com.micro.fast.fastdfs.config.param;

import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotNull;

/**
 * fastdfs java client properties auto config class
 * @author lsy
 * @version 1.0
 * @since 1.0
 */
@Configuration
@Validated
@ConfigurationProperties(prefix = "fastdfs")
@AutoConfigureBefore({com.micro.fast.fastdfs.config.FastDFSClientConfig.class})
public class FastDFSClientParamConfig {

  private String connectTimeoutInSeconds;

  private String networkTimeoutInSeconds;

  private String charset;

  private String httpAntiStealToken;

  private String httpSecretKey;

  private String httpTrackerHttpPort;

  @NotNull
  private String trackerServers;

  public String getConnectTimeoutInSeconds() {
    return connectTimeoutInSeconds;
  }

  public void setConnectTimeoutInSeconds(String connectTimeoutInSeconds) {
    this.connectTimeoutInSeconds = connectTimeoutInSeconds;
  }

  public String getNetworkTimeoutInSeconds() {
    return networkTimeoutInSeconds;
  }

  public void setNetworkTimeoutInSeconds(String networkTimeoutInSeconds) {
    this.networkTimeoutInSeconds = networkTimeoutInSeconds;
  }

  public String getCharset() {
    return charset;
  }

  public void setCharset(String charset) {
    this.charset = charset;
  }

  public String getHttpAntiStealToken() {
    return httpAntiStealToken;
  }

  public void setHttpAntiStealToken(String httpAntiStealToken) {
    this.httpAntiStealToken = httpAntiStealToken;
  }

  public String getHttpSecretKey() {
    return httpSecretKey;
  }

  public void setHttpSecretKey(String httpSecretKey) {
    this.httpSecretKey = httpSecretKey;
  }

  public String getHttpTrackerHttpPort() {
    return httpTrackerHttpPort;
  }

  public void setHttpTrackerHttpPort(String httpTrackerHttpPort) {
    this.httpTrackerHttpPort = httpTrackerHttpPort;
  }

  public String getTrackerServers() {
    return trackerServers;
  }

  public void setTrackerServers(String trackerServers) {
    this.trackerServers = trackerServers;
  }
}
